package cn.engage.basic.service;

import cn.engage.basic.domain.BaseDomain;
import cn.engage.basic.query.BaseQuery;
import cn.engage.basic.util.PageList;
import cn.engage.org.domain.Department;

import java.util.List;

public interface BaseService<T> {

    // 添加
    void add(T t);

    // 修改
    void update(T t);

    // 根据id删除
    void delete(Long id);

    // 查询所有
    List<T> findAll();

    // 分页查询
    PageList<T> queryByPage(BaseQuery query);

    // 批量删除
    void patchDelete(List<Long> ids);
    // 根据id查询一个
    List<T> findById(Long id);
}
